[INFO] cloning repository https://github.com/notsoharshdevisha/nn
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/notsoharshdevisha/nn" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnotsoharshdevisha%2Fnn", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnotsoharshdevisha%2Fnn'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 78f0675c2527f6fc591d01aca19768054c23a362
[INFO] testing notsoharshdevisha/nn against try#28f95933dc0727396c07b48d0a8cb5211b7fb472 for pr-154065-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnotsoharshdevisha%2Fnn" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/notsoharshdevisha/nn
[INFO] finished tweaking git repo https://github.com/notsoharshdevisha/nn
[INFO] tweaked toml for git repo https://github.com/notsoharshdevisha/nn written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/notsoharshdevisha/nn on toolchain 28f95933dc0727396c07b48d0a8cb5211b7fb472
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/notsoharshdevisha/nn already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[ERROR] error running command: no output for 300 seconds
[INFO] testing notsoharshdevisha/nn against try#28f95933dc0727396c07b48d0a8cb5211b7fb472 for pr-154065-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnotsoharshdevisha%2Fnn" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/notsoharshdevisha/nn
[INFO] finished tweaking git repo https://github.com/notsoharshdevisha/nn
[INFO] tweaked toml for git repo https://github.com/notsoharshdevisha/nn written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/notsoharshdevisha/nn on toolchain 28f95933dc0727396c07b48d0a8cb5211b7fb472
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/notsoharshdevisha/nn already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[ERROR] error running command: no output for 300 seconds
[INFO] testing notsoharshdevisha/nn against try#28f95933dc0727396c07b48d0a8cb5211b7fb472 for pr-154065-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnotsoharshdevisha%2Fnn" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/notsoharshdevisha/nn
[INFO] finished tweaking git repo https://github.com/notsoharshdevisha/nn
[INFO] tweaked toml for git repo https://github.com/notsoharshdevisha/nn written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/notsoharshdevisha/nn on toolchain 28f95933dc0727396c07b48d0a8cb5211b7fb472
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/notsoharshdevisha/nn already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[ERROR] error running command: no output for 300 seconds
[INFO] testing notsoharshdevisha/nn against try#28f95933dc0727396c07b48d0a8cb5211b7fb472 for pr-154065-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnotsoharshdevisha%2Fnn" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/notsoharshdevisha/nn
[INFO] finished tweaking git repo https://github.com/notsoharshdevisha/nn
[INFO] tweaked toml for git repo https://github.com/notsoharshdevisha/nn written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/notsoharshdevisha/nn on toolchain 28f95933dc0727396c07b48d0a8cb5211b7fb472
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/notsoharshdevisha/nn already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[ERROR] error running command: no output for 300 seconds
[INFO] testing notsoharshdevisha/nn against try#28f95933dc0727396c07b48d0a8cb5211b7fb472 for pr-154065-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnotsoharshdevisha%2Fnn" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/notsoharshdevisha/nn
[INFO] finished tweaking git repo https://github.com/notsoharshdevisha/nn
[INFO] tweaked toml for git repo https://github.com/notsoharshdevisha/nn written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/notsoharshdevisha/nn on toolchain 28f95933dc0727396c07b48d0a8cb5211b7fb472
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/notsoharshdevisha/nn already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 338089a100980f529cef559bccf4223f422ae5e1fc21d19f0c98b7ca557985f9
[INFO] running `Command { std: "docker" "start" "-a" "338089a100980f529cef559bccf4223f422ae5e1fc21d19f0c98b7ca557985f9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "338089a100980f529cef559bccf4223f422ae5e1fc21d19f0c98b7ca557985f9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "338089a100980f529cef559bccf4223f422ae5e1fc21d19f0c98b7ca557985f9", kill_on_drop: false }`
[INFO] [stdout] 338089a100980f529cef559bccf4223f422ae5e1fc21d19f0c98b7ca557985f9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 810879e8a1526c73384d71de0a413e590bb0562349e62907de62a3a6d9935505
[INFO] running `Command { std: "docker" "start" "-a" "810879e8a1526c73384d71de0a413e590bb0562349e62907de62a3a6d9935505", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.158
[INFO] [stderr]    Compiling quote v1.0.37
[INFO] [stderr]    Compiling syn v2.0.76
[INFO] [stderr]    Compiling getrandom v0.2.15
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling zerocopy-derive v0.7.35
[INFO] [stderr]    Compiling zerocopy v0.7.35
[INFO] [stderr]    Compiling ppv-lite86 v0.2.20
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling nn v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `generate_network_weights_and_biases` and `generate_rand_matrix`
[INFO] [stdout]  --> src/test_nn.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     generate_network_weights_and_biases,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 9 |     generate_rand_matrix,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module
[INFO] [stdout]  --> src/lib.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | mod test_nn;
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]   --> src/mat.rs:83:9
[INFO] [stdout]    |
[INFO] [stdout] 83 |     use super::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `output_size`
[INFO] [stdout]    --> src/utils/utils.rs:165:5
[INFO] [stdout]     |
[INFO] [stdout] 165 |     output_size: &usize,
[INFO] [stdout]     |     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_output_size`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `train_batch` is never used
[INFO] [stdout]   --> src/test_nn.rs:13:4
[INFO] [stdout]    |
[INFO] [stdout] 13 | fn train_batch(
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `train` is never used
[INFO] [stdout]   --> src/test_nn.rs:37:4
[INFO] [stdout]    |
[INFO] [stdout] 37 | fn train(
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `update_err` is never used
[INFO] [stdout]   --> src/test_nn.rs:64:4
[INFO] [stdout]    |
[INFO] [stdout] 64 | fn update_err(curr_err: &Vec<Vec<f64>>, curr_layer_weights: &Vec<Vec<f64>>) -> Vec<Vec<f64>> {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `update_weights` is never used
[INFO] [stdout]   --> src/test_nn.rs:69:4
[INFO] [stdout]    |
[INFO] [stdout] 69 | fn update_weights(grad: &Vec<Vec<f64>>, weights: &mut Vec<Vec<f64>>, learning_rate: f64) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `update_biases` is never used
[INFO] [stdout]   --> src/test_nn.rs:77:4
[INFO] [stdout]    |
[INFO] [stdout] 77 | fn update_biases(grad: &Vec<Vec<f64>>, bias: &mut Vec<Vec<f64>>, learning_rate: f64) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `back_propagate` is never used
[INFO] [stdout]   --> src/test_nn.rs:85:4
[INFO] [stdout]    |
[INFO] [stdout] 85 | fn back_propagate(
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `forward_pass` is never used
[INFO] [stdout]    --> src/test_nn.rs:111:4
[INFO] [stdout]     |
[INFO] [stdout] 111 | fn forward_pass(
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `predict` is never used
[INFO] [stdout]    --> src/test_nn.rs:134:4
[INFO] [stdout]     |
[INFO] [stdout] 134 | fn predict(
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `batch_err_per` is never used
[INFO] [stdout]  --> src/utils/utils.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn batch_err_per(batch_output: &Vec<Vec<f64>>, batch_targets: &[Vec<f64>]) -> f64 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `batch_err` is never used
[INFO] [stdout]   --> src/utils/utils.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub fn batch_err(batch_output: &Vec<Vec<f64>>, batch_targets: &[Vec<f64>]) -> Vec<Vec<f64>> {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `min_max_scaler` is never used
[INFO] [stdout]   --> src/utils/utils.rs:34:8
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub fn min_max_scaler(matrix: &mut Vec<Vec<f64>>) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `transpose` is never used
[INFO] [stdout]   --> src/utils/utils.rs:61:8
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub fn transpose(matrix: &Vec<Vec<f64>>) -> Vec<Vec<f64>> {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `df_relu` is never used
[INFO] [stdout]   --> src/utils/utils.rs:76:4
[INFO] [stdout]    |
[INFO] [stdout] 76 | fn df_relu(x: &mut f64) {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `relu` is never used
[INFO] [stdout]   --> src/utils/utils.rs:82:4
[INFO] [stdout]    |
[INFO] [stdout] 82 | fn relu(x: &mut f64) {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `df_activate` is never used
[INFO] [stdout]   --> src/utils/utils.rs:88:8
[INFO] [stdout]    |
[INFO] [stdout] 88 | pub fn df_activate(matrix: &mut Vec<Vec<f64>>) {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_bias` is never used
[INFO] [stdout]   --> src/utils/utils.rs:99:8
[INFO] [stdout]    |
[INFO] [stdout] 99 | pub fn add_bias(bias: &Vec<Vec<f64>>, layer_batch_output: &mut Vec<Vec<f64>>) {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `activate` is never used
[INFO] [stdout]    --> src/utils/utils.rs:117:8
[INFO] [stdout]     |
[INFO] [stdout] 117 | pub fn activate(matrix: &mut Vec<Vec<f64>>) {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dot` is never used
[INFO] [stdout]    --> src/utils/utils.rs:128:8
[INFO] [stdout]     |
[INFO] [stdout] 128 | pub fn dot(mat1: &Vec<Vec<f64>>, mat2: &Vec<Vec<f64>>) -> Vec<Vec<f64>> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_rand_matrix` is never used
[INFO] [stdout]    --> src/utils/utils.rs:151:8
[INFO] [stdout]     |
[INFO] [stdout] 151 | pub fn generate_rand_matrix(rows: &usize, cols: &usize) -> Vec<Vec<f64>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_network_weights_and_biases` is never used
[INFO] [stdout]    --> src/utils/utils.rs:162:8
[INFO] [stdout]     |
[INFO] [stdout] 162 | pub fn generate_network_weights_and_biases(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NN` is never constructed
[INFO] [stdout]  --> src/nn.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | struct NN {
[INFO] [stdout]   |        ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]  --> src/nn.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | impl NN {
[INFO] [stdout]   | ------- associated function in this implementation
[INFO] [stdout] 5 |     pub fn new() -> Self {
[INFO] [stdout]   |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `check_dimensions` and `new` are never used
[INFO] [stdout]   --> src/mat.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl<T: Float> Mat<T> {
[INFO] [stdout]    | --------------------- associated functions in this implementation
[INFO] [stdout] 14 |     fn check_dimensions(data: &[Vec<T>]) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub fn new(data: Vec<Vec<T>>) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.33s
[INFO] running `Command { std: "docker" "inspect" "810879e8a1526c73384d71de0a413e590bb0562349e62907de62a3a6d9935505", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "810879e8a1526c73384d71de0a413e590bb0562349e62907de62a3a6d9935505", kill_on_drop: false }`
[INFO] [stdout] 810879e8a1526c73384d71de0a413e590bb0562349e62907de62a3a6d9935505
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 4ad0cfc474cbe658af214bd663b1efe3739fb1c84fa684455b54d3ca53cb9650
[INFO] running `Command { std: "docker" "start" "-a" "4ad0cfc474cbe658af214bd663b1efe3739fb1c84fa684455b54d3ca53cb9650", kill_on_drop: false }`
[INFO] [stdout] warning: unused imports: `generate_network_weights_and_biases` and `generate_rand_matrix`
[INFO] [stdout]  --> src/test_nn.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     generate_network_weights_and_biases,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 9 |     generate_rand_matrix,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module
[INFO] [stdout]  --> src/lib.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | mod test_nn;
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]   --> src/mat.rs:83:9
[INFO] [stdout]    |
[INFO] [stdout] 83 |     use super::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `output_size`
[INFO] [stdout]    --> src/utils/utils.rs:165:5
[INFO] [stdout]     |
[INFO] [stdout] 165 |     output_size: &usize,
[INFO] [stdout]     |     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_output_size`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `train_batch` is never used
[INFO] [stdout]   --> src/test_nn.rs:13:4
[INFO] [stdout]    |
[INFO] [stdout] 13 | fn train_batch(
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `train` is never used
[INFO] [stdout]   --> src/test_nn.rs:37:4
[INFO] [stdout]    |
[INFO] [stdout] 37 | fn train(
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `update_err` is never used
[INFO] [stdout]   --> src/test_nn.rs:64:4
[INFO] [stdout]    |
[INFO] [stdout] 64 | fn update_err(curr_err: &Vec<Vec<f64>>, curr_layer_weights: &Vec<Vec<f64>>) -> Vec<Vec<f64>> {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `update_weights` is never used
[INFO] [stdout]   --> src/test_nn.rs:69:4
[INFO] [stdout]    |
[INFO] [stdout] 69 | fn update_weights(grad: &Vec<Vec<f64>>, weights: &mut Vec<Vec<f64>>, learning_rate: f64) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `update_biases` is never used
[INFO] [stdout]   --> src/test_nn.rs:77:4
[INFO] [stdout]    |
[INFO] [stdout] 77 | fn update_biases(grad: &Vec<Vec<f64>>, bias: &mut Vec<Vec<f64>>, learning_rate: f64) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `back_propagate` is never used
[INFO] [stdout]   --> src/test_nn.rs:85:4
[INFO] [stdout]    |
[INFO] [stdout] 85 | fn back_propagate(
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `forward_pass` is never used
[INFO] [stdout]    --> src/test_nn.rs:111:4
[INFO] [stdout]     |
[INFO] [stdout] 111 | fn forward_pass(
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `predict` is never used
[INFO] [stdout]    --> src/test_nn.rs:134:4
[INFO] [stdout]     |
[INFO] [stdout] 134 | fn predict(
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `batch_err_per` is never used
[INFO] [stdout]  --> src/utils/utils.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn batch_err_per(batch_output: &Vec<Vec<f64>>, batch_targets: &[Vec<f64>]) -> f64 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `batch_err` is never used
[INFO] [stdout]   --> src/utils/utils.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub fn batch_err(batch_output: &Vec<Vec<f64>>, batch_targets: &[Vec<f64>]) -> Vec<Vec<f64>> {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `min_max_scaler` is never used
[INFO] [stdout]   --> src/utils/utils.rs:34:8
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub fn min_max_scaler(matrix: &mut Vec<Vec<f64>>) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `transpose` is never used
[INFO] [stdout]   --> src/utils/utils.rs:61:8
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub fn transpose(matrix: &Vec<Vec<f64>>) -> Vec<Vec<f64>> {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `df_relu` is never used
[INFO] [stdout]   --> src/utils/utils.rs:76:4
[INFO] [stdout]    |
[INFO] [stdout] 76 | fn df_relu(x: &mut f64) {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling nn v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: function `relu` is never used
[INFO] [stdout]   --> src/utils/utils.rs:82:4
[INFO] [stdout]    |
[INFO] [stdout] 82 | fn relu(x: &mut f64) {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `df_activate` is never used
[INFO] [stdout]   --> src/utils/utils.rs:88:8
[INFO] [stdout]    |
[INFO] [stdout] 88 | pub fn df_activate(matrix: &mut Vec<Vec<f64>>) {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_bias` is never used
[INFO] [stdout]   --> src/utils/utils.rs:99:8
[INFO] [stdout]    |
[INFO] [stdout] 99 | pub fn add_bias(bias: &Vec<Vec<f64>>, layer_batch_output: &mut Vec<Vec<f64>>) {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `activate` is never used
[INFO] [stdout]    --> src/utils/utils.rs:117:8
[INFO] [stdout]     |
[INFO] [stdout] 117 | pub fn activate(matrix: &mut Vec<Vec<f64>>) {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dot` is never used
[INFO] [stdout]    --> src/utils/utils.rs:128:8
[INFO] [stdout]     |
[INFO] [stdout] 128 | pub fn dot(mat1: &Vec<Vec<f64>>, mat2: &Vec<Vec<f64>>) -> Vec<Vec<f64>> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_rand_matrix` is never used
[INFO] [stdout]    --> src/utils/utils.rs:151:8
[INFO] [stdout]     |
[INFO] [stdout] 151 | pub fn generate_rand_matrix(rows: &usize, cols: &usize) -> Vec<Vec<f64>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_network_weights_and_biases` is never used
[INFO] [stdout]    --> src/utils/utils.rs:162:8
[INFO] [stdout]     |
[INFO] [stdout] 162 | pub fn generate_network_weights_and_biases(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NN` is never constructed
[INFO] [stdout]  --> src/nn.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | struct NN {
[INFO] [stdout]   |        ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]  --> src/nn.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | impl NN {
[INFO] [stdout]   | ------- associated function in this implementation
[INFO] [stdout] 5 |     pub fn new() -> Self {
[INFO] [stdout]   |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `check_dimensions` and `new` are never used
[INFO] [stdout]   --> src/mat.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl<T: Float> Mat<T> {
[INFO] [stdout]    | --------------------- associated functions in this implementation
[INFO] [stdout] 14 |     fn check_dimensions(data: &[Vec<T>]) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub fn new(data: Vec<Vec<T>>) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `generate_network_weights_and_biases` and `generate_rand_matrix`
[INFO] [stdout]  --> src/test_nn.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     generate_network_weights_and_biases,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 9 |     generate_rand_matrix,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]  --> src/lib.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |     use super::*;
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `output_size`
[INFO] [stdout]    --> src/utils/utils.rs:165:5
[INFO] [stdout]     |
[INFO] [stdout] 165 |     output_size: &usize,
[INFO] [stdout]     |     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_output_size`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NN` is never constructed
[INFO] [stdout]  --> src/nn.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | struct NN {
[INFO] [stdout]   |        ^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]  --> src/nn.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | impl NN {
[INFO] [stdout]   | ------- associated function in this implementation
[INFO] [stdout] 5 |     pub fn new() -> Self {
[INFO] [stdout]   |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.51s
[INFO] running `Command { std: "docker" "inspect" "4ad0cfc474cbe658af214bd663b1efe3739fb1c84fa684455b54d3ca53cb9650", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4ad0cfc474cbe658af214bd663b1efe3739fb1c84fa684455b54d3ca53cb9650", kill_on_drop: false }`
[INFO] [stdout] 4ad0cfc474cbe658af214bd663b1efe3739fb1c84fa684455b54d3ca53cb9650
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 2ee88b99f7168618af6c833c30ed14988c9a0d0d82cc0718117aee5ec4d74497
[INFO] running `Command { std: "docker" "start" "-a" "2ee88b99f7168618af6c833c30ed14988c9a0d0d82cc0718117aee5ec4d74497", kill_on_drop: false }`
[INFO] [stderr] warning: unused imports: `generate_network_weights_and_biases` and `generate_rand_matrix`
[INFO] [stderr]  --> src/test_nn.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 |     generate_network_weights_and_biases,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 9 |     generate_rand_matrix,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module
[INFO] [stderr]  --> src/lib.rs:1:1
[INFO] [stderr]   |
[INFO] [stderr] 1 | mod test_nn;
[INFO] [stderr]   | ^^^^^^^^^^^^
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::*`
[INFO] [stderr]   --> src/mat.rs:83:9
[INFO] [stderr]    |
[INFO] [stderr] 83 |     use super::*;
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `output_size`
[INFO] [stderr]    --> src/utils/utils.rs:165:5
[INFO] [stderr]     |
[INFO] [stderr] 165 |     output_size: &usize,
[INFO] [stderr]     |     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_output_size`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `train_batch` is never used
[INFO] [stderr]   --> src/test_nn.rs:13:4
[INFO] [stderr]    |
[INFO] [stderr] 13 | fn train_batch(
[INFO] [stderr]    |    ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `train` is never used
[INFO] [stderr]   --> src/test_nn.rs:37:4
[INFO] [stderr]    |
[INFO] [stderr] 37 | fn train(
[INFO] [stderr]    |    ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `update_err` is never used
[INFO] [stderr]   --> src/test_nn.rs:64:4
[INFO] [stderr]    |
[INFO] [stderr] 64 | fn update_err(curr_err: &Vec<Vec<f64>>, curr_layer_weights: &Vec<Vec<f64>>) -> Vec<Vec<f64>> {
[INFO] [stderr]    |    ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `update_weights` is never used
[INFO] [stderr]   --> src/test_nn.rs:69:4
[INFO] [stderr]    |
[INFO] [stderr] 69 | fn update_weights(grad: &Vec<Vec<f64>>, weights: &mut Vec<Vec<f64>>, learning_rate: f64) {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `update_biases` is never used
[INFO] [stderr]   --> src/test_nn.rs:77:4
[INFO] [stderr]    |
[INFO] [stderr] 77 | fn update_biases(grad: &Vec<Vec<f64>>, bias: &mut Vec<Vec<f64>>, learning_rate: f64) {
[INFO] [stderr]    |    ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `back_propagate` is never used
[INFO] [stderr]   --> src/test_nn.rs:85:4
[INFO] [stderr]    |
[INFO] [stderr] 85 | fn back_propagate(
[INFO] [stderr]    |    ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `forward_pass` is never used
[INFO] [stderr]    --> src/test_nn.rs:111:4
[INFO] [stderr]     |
[INFO] [stderr] 111 | fn forward_pass(
[INFO] [stderr]     |    ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `predict` is never used
[INFO] [stderr]    --> src/test_nn.rs:134:4
[INFO] [stderr]     |
[INFO] [stderr] 134 | fn predict(
[INFO] [stderr]     |    ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `batch_err_per` is never used
[INFO] [stderr]  --> src/utils/utils.rs:3:8
[INFO] [stderr]   |
[INFO] [stderr] 3 | pub fn batch_err_per(batch_output: &Vec<Vec<f64>>, batch_targets: &[Vec<f64>]) -> f64 {
[INFO] [stderr]   |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `batch_err` is never used
[INFO] [stderr]   --> src/utils/utils.rs:14:8
[INFO] [stderr]    |
[INFO] [stderr] 14 | pub fn batch_err(batch_output: &Vec<Vec<f64>>, batch_targets: &[Vec<f64>]) -> Vec<Vec<f64>> {
[INFO] [stderr]    |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `min_max_scaler` is never used
[INFO] [stderr]   --> src/utils/utils.rs:34:8
[INFO] [stderr]    |
[INFO] [stderr] 34 | pub fn min_max_scaler(matrix: &mut Vec<Vec<f64>>) {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `transpose` is never used
[INFO] [stderr]   --> src/utils/utils.rs:61:8
[INFO] [stderr]    |
[INFO] [stderr] 61 | pub fn transpose(matrix: &Vec<Vec<f64>>) -> Vec<Vec<f64>> {
[INFO] [stderr]    |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `df_relu` is never used
[INFO] [stderr]   --> src/utils/utils.rs:76:4
[INFO] [stderr]    |
[INFO] [stderr] 76 | fn df_relu(x: &mut f64) {
[INFO] [stderr]    |    ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `relu` is never used
[INFO] [stderr]   --> src/utils/utils.rs:82:4
[INFO] [stderr]    |
[INFO] [stderr] 82 | fn relu(x: &mut f64) {
[INFO] [stderr]    |    ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `df_activate` is never used
[INFO] [stderr]   --> src/utils/utils.rs:88:8
[INFO] [stderr]    |
[INFO] [stderr] 88 | pub fn df_activate(matrix: &mut Vec<Vec<f64>>) {
[INFO] [stderr]    |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `add_bias` is never used
[INFO] [stderr]   --> src/utils/utils.rs:99:8
[INFO] [stderr]    |
[INFO] [stderr] 99 | pub fn add_bias(bias: &Vec<Vec<f64>>, layer_batch_output: &mut Vec<Vec<f64>>) {
[INFO] [stderr]    |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `activate` is never used
[INFO] [stderr]    --> src/utils/utils.rs:117:8
[INFO] [stderr]     |
[INFO] [stderr] 117 | pub fn activate(matrix: &mut Vec<Vec<f64>>) {
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `dot` is never used
[INFO] [stderr]    --> src/utils/utils.rs:128:8
[INFO] [stderr]     |
[INFO] [stderr] 128 | pub fn dot(mat1: &Vec<Vec<f64>>, mat2: &Vec<Vec<f64>>) -> Vec<Vec<f64>> {
[INFO] [stderr]     |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `generate_rand_matrix` is never used
[INFO] [stderr]    --> src/utils/utils.rs:151:8
[INFO] [stderr]     |
[INFO] [stderr] 151 | pub fn generate_rand_matrix(rows: &usize, cols: &usize) -> Vec<Vec<f64>> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `generate_network_weights_and_biases` is never used
[INFO] [stderr]    --> src/utils/utils.rs:162:8
[INFO] [stderr]     |
[INFO] [stderr] 162 | pub fn generate_network_weights_and_biases(
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `NN` is never constructed
[INFO] [stderr]  --> src/nn.rs:1:8
[INFO] [stderr]   |
[INFO] [stderr] 1 | struct NN {
[INFO] [stderr]   |        ^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]  --> src/nn.rs:5:12
[INFO] [stderr]   |
[INFO] [stderr] 4 | impl NN {
[INFO] [stderr]   | ------- associated function in this implementation
[INFO] [stderr] 5 |     pub fn new() -> Self {
[INFO] [stderr]   |            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated functions `check_dimensions` and `new` are never used
[INFO] [stderr]   --> src/mat.rs:14:8
[INFO] [stderr]    |
[INFO] [stderr] 13 | impl<T: Float> Mat<T> {
[INFO] [stderr]    | --------------------- associated functions in this implementation
[INFO] [stderr] 14 |     fn check_dimensions(data: &[Vec<T>]) {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 27 |     pub fn new(data: Vec<Vec<T>>) -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `generate_network_weights_and_biases` and `generate_rand_matrix`
[INFO] [stderr]  --> src/test_nn.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 |     generate_network_weights_and_biases,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 9 |     generate_rand_matrix,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::*`
[INFO] [stderr]  --> src/lib.rs:9:9
[INFO] [stderr]   |
[INFO] [stderr] 9 |     use super::*;
[INFO] [stderr]   |         ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `NN` is never constructed
[INFO] [stderr]  --> src/nn.rs:1:8
[INFO] [stderr]   |
[INFO] [stderr] 1 | struct NN {
[INFO] [stderr]   |        ^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `nn` (lib) generated 26 warnings (run `cargo fix --lib -p nn` to apply 3 suggestions)
[INFO] [stderr] warning: `nn` (lib test) generated 5 warnings (2 duplicates) (run `cargo fix --lib -p nn --tests` to apply 2 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.02s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/nn-a2fe06da35ae83f8)
[INFO] [stdout] 
[INFO] [stdout] running 59 tests
[INFO] [stdout] test mat::tests::test_dot_product ... ok
[INFO] [stdout] test mat::tests::test_add_matrices_same_dimensions ... ok
[INFO] [stdout] test mat::tests::test_mul_identity ... ok
[INFO] [stdout] test mat::tests::test_mul_matrices ... ok
[INFO] [stdout] test mat::tests::test_mul_zero_matrix ... ok
[INFO] [stdout] test mat::tests::test_shape ... ok
[INFO] [stdout] test test_nn::test_test_nn::test_back_propagate_proper_execution ... ok
[INFO] [stdout] test test_nn::test_test_nn::test_forward_pass ... ok
[INFO] [stdout] test utils::utils::tests::test_activate_with_mixed_values ... ok
[INFO] [stdout] test utils::utils::tests::test_activate_with_negative_values ... ok
[INFO] [stdout] test utils::utils::tests::test_activate_with_positive_values ... ok
[INFO] [stdout] test utils::utils::tests::test_add_bias_single_element ... ok
[INFO] [stdout] test utils::utils::tests::test_add_bias_correct ... ok
[INFO] [stdout] test utils::utils::tests::test_df_activate_mixed_values ... ok
[INFO] [stdout] test utils::utils::tests::test_df_activate_positive_values ... ok
[INFO] [stdout] test utils::utils::tests::test_df_relu_negative ... ok
[INFO] [stdout] test utils::utils::tests::test_df_relu_positive ... ok
[INFO] [stdout] test utils::utils::tests::test_df_relu_zero ... ok
[INFO] [stdout] test test_nn::test_test_nn::test_train_single_input_proper_execution ... ok
[INFO] [stdout] test mat::tests::test_add_matrices_different_dimensions - should panic ... ok
[INFO] [stdout] test mat::tests::test_empty_matrix - should panic ... ok
[INFO] [stdout] test utils::utils::tests::test_dot_product_mismatched_sizes ... ok
[INFO] [stdout] test utils::utils::tests::test_dot_product_regular_matrices ... ok
[INFO] [stdout] test utils::utils::tests::test_dot_product_single_element_matrices ... ok
[INFO] [stdout] test mat::tests::test_empty_matrix2 - should panic ... ok
[INFO] [stdout] test mat::tests::test_mul_incompatible_matrices - should panic ... ok
[INFO] [stdout] test utils::utils::tests::test_generate_network_weights_and_biases ... ok
[INFO] [stdout] test utils::utils::tests::test_generate_network_weights_and_biases_empty_hidden ... ok
[INFO] [stdout] test utils::utils::tests::test_generate_network_weights_and_biases_single_hidden_layer ... ok
[INFO] [stdout] test utils::utils::tests::test_generate_rand_matrix_dimensions ... ok
[INFO] [stdout] test utils::utils::tests::test_generate_rand_matrix_randomness ... ok
[INFO] [stdout] test utils::utils::tests::test_generate_rand_matrix_values_range ... ok
[INFO] [stdout] test utils::utils::tests::test_large_values_matrix ... ok
[INFO] [stdout] test utils::utils::tests::test_non_uniform_matrix ... ok
[INFO] [stdout] test utils::utils::tests::test_relu_negative ... ok
[INFO] [stdout] test utils::utils::tests::test_relu_positive ... ok
[INFO] [stdout] test utils::utils::tests::test_relu_zero ... ok
[INFO] [stdout] test utils::utils::tests::test_single_element_matrix ... ok
[INFO] [stdout] test utils::utils::tests::test_transpose_rectangular_matrix ... ok
[INFO] [stdout] test test_nn::test_test_nn::test_back_propagate_weights_biases_length_mismatch - should panic ... ok
[INFO] [stdout] test utils::utils::tests::test_transpose_single_column_matrix ... ok
[INFO] [stdout] test utils::utils::tests::test_transpose_single_element_matrix ... ok
[INFO] [stdout] test utils::utils::tests::test_transpose_single_row_matrix ... ok
[INFO] [stdout] test utils::utils::tests::test_transpose_square_matrix ... ok
[INFO] [stdout] test utils::utils::tests::test_uniform_matrix ... ok
[INFO] [stdout] test test_nn::test_test_nn::test_forward_pass_mismatched_weights_biases - should panic ... ok
[INFO] [stdout] test test_nn::test_test_nn::test_train_mismatched_weights_biases - should panic ... ok
[INFO] [stdout] test utils::utils::tests::test_activate_with_empty_matrix - should panic ... ok
[INFO] [stdout] test utils::utils::tests::test_add_bias_dimension_mismatch - should panic ... ok
[INFO] [stdout] test utils::utils::tests::test_add_bias_empty_layer_output - should panic ... ok
[INFO] [stdout] test utils::utils::tests::test_add_bias_multiple_bias_rows - should panic ... ok
[INFO] [stdout] test utils::utils::tests::test_add_bias_empty_bias - should panic ... ok
[INFO] [stdout] test utils::utils::tests::test_df_activate_empty_matrix - should panic ... ok
[INFO] [stdout] test utils::utils::tests::test_dot_product_empty_matrices - should panic ... ok
[INFO] [stdout] test utils::utils::tests::test_dot_product_incompatible_dimensions - should panic ... ok
[INFO] [stdout] test utils::utils::tests::test_empty_sub_matrix - should panic ... ok
[INFO] [stdout] test utils::utils::tests::test_empty_matrix - should panic ... ok
[INFO] [stdout] test utils::utils::tests::test_transpose_empty_matrix - should panic ... ok
[INFO] [stdout] test test_nn::test_test_nn::test_convergence ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 59 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.26s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests nn
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "2ee88b99f7168618af6c833c30ed14988c9a0d0d82cc0718117aee5ec4d74497", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2ee88b99f7168618af6c833c30ed14988c9a0d0d82cc0718117aee5ec4d74497", kill_on_drop: false }`
[INFO] [stdout] 2ee88b99f7168618af6c833c30ed14988c9a0d0d82cc0718117aee5ec4d74497
